var express = require("express");
var router = express.Router();
var moment = require("moment");

router.post("/yzm", async (req, res) => {

    let phone = req.body.phone//存储手机号
    let captcha = ''//存储验证码
    let effective = "10"//存储有效时长
    function getRanderCode() {
        let code = ''
        for (let i = 0; i < 6; i++) {
            code += String(Math.ceil(Math.random() * 9))
        }
        captcha = code
        console.log(captcha, code, 60)
        return code
    }
    getRanderCode()
    console.log(req.body.phone, captcha);

    // Depends on tencentcloud-sdk-nodejs version 4.0.3 or higher
    const tencentcloud = require("tencentcloud-sdk-nodejs-sms");

    const SmsClient = tencentcloud.sms.v20210111.Client;

    // 实例化一个认证对象，入参需要传入腾讯云账户 SecretId 和 SecretKey，此处还需注意密钥对的保密
    // 代码泄露可能会导致 SecretId 和 SecretKey 泄露，并威胁账号下所有资源的安全性。以下代码示例仅供参考，建议采用更安全的方式来使用密钥，请参见：https://cloud.tencent.com/document/product/1278/85305
    // 密钥可前往官网控制台 https://console.cloud.tencent.com/cam/capi 进行获取
    const clientConfig = {
        credential: {
            secretId: "AKIDTlEcqvoSkyyiBRTHp8D3eFdpmTyINCl0",
            secretKey: "81qXieS2OejaCdrkQxHRbeT3QYUCoT91",
        },
        region: "ap-beijing",
        profile: {
            httpProfile: {
                endpoint: "sms.tencentcloudapi.com",
            },
        },
    };

    // 实例化要请求产品的client对象,clientProfile是可选的
    const client = new SmsClient(clientConfig);
    const params = {
        "PhoneNumberSet": [
            "+86" + phone
        ],
        "SmsSdkAppId": "1400820278",
        "SignName": "筱熙不在公众号",
        "TemplateId": "1793249",
        "TemplateParamSet": [
            captcha,
            effective
        ]
    };
    client.SendSms(params).then(
        (data) => {
            console.log(data);
            let obj = {
                phone,//手机号
                time: moment(Date.now()).format('YYYY/MM/DD HH:mm:ss'),//发送时间
                effective,//有效时长
                captcha//验证码
            }
            console.log(obj)
            res.send({
                code: 200,
                data: obj
            })
        },
        (err) => {
            console.error("error", err);
        }
    );
})

module.exports = router